﻿Imports Fgv.Framework.UI
Imports LS.Leilao.Dominio

Partial Class UserControls_LotesDoUsuario
    Inherits BaseUserControl

#Region "Atributos da pagina"

    Public Property Usuario() As Usuario
        Get
            Return TryCast(ViewState("_usuario"), Usuario)
        End Get
        Set(ByVal value As Usuario)
            ViewState("_usuario") = value
        End Set
    End Property

#End Region

#Region "Delegates"

    Protected Delegate Sub PageDelegate()

#End Region

#Region "Classes Injetadas"

#End Region

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

        If Not IsPostBack Then

        End If

    End Sub

#Region "Funcoes de Databind"

    Public Sub DatabindLotes()

        Dim _lotes As IList(Of Lote)



    End Sub

#End Region

#Region "Operacoes do Usuario"

#End Region

#Region "Classes Auxiliares"

#End Region


    Protected Function GetLotes() As IList(Of Lote)

        Dim _usuario01, _usuario02, _usuario03, _usuario04, _usuario05 As Usuario
        Dim _pessoa01, _pessoa02, _pessoa03, _pessoa04, _pessoa05 As Pessoa
        Dim _peca01, _peca02, _peca03, _peca04, _peca05, _peca06, _peca07, _peca08 As Peca
        Dim _imagem01, _imagem02 As ImagemPeca
        Dim _lote01, _lote02 As Lote
        Dim _regraLeilao01 As RegraLeilao
        Dim _leilao01 As Leilao
        Dim _regraLote01 As RegraLote
        Dim _comissao01 As Comissao
        Dim _lance01, _lance02, _lance03, _lance04, _lance05, _lance06, _lance07 As Lance
        Dim _contato01, _contato02, _contato03 As Contato
        Dim _venda01 As Venda
        Dim _fatura01 As Fatura

        _pessoa01 = New Pessoa With {.Nome = "Leonardo Santana", .Cidade = "Rio de Janeiro", .Uf = "RJ", .DocumentoIdentificacao = "123", .Email = "email@gmail.com"}
        _pessoa02 = New Pessoa With {.Nome = "Ana Tereza", .Cidade = "Rio de Janeiro", .Uf = "RJ", .DocumentoIdentificacao = "245", .Email = "ana@gmail.com"}
        _pessoa03 = New Pessoa With {.Nome = "Marco", .Cidade = "Rio de Janeiro", .Uf = "RJ", .DocumentoIdentificacao = "678", .Email = "marco@gmail.com"}
        _pessoa04 = New Pessoa With {.Nome = "Antonio", .Cidade = "Rio de Janeiro", .Uf = "RJ", .DocumentoIdentificacao = "908", .Email = "antonio@gmail.com"}
        _pessoa05 = New Pessoa With {.Nome = "Carlos", .Cidade = "São Paulo", .Uf = "SP", .DocumentoIdentificacao = "459", .Email = "carlos@gmail.com"}


        _usuario01 = New Usuario With {.Login = "LSANTANA", .Pessoa = _pessoa01, .Habilitado = False}

        _contato01 = New Telefone With {.DDD = "21", .Numero = "2538-9967", .Pessoa = _pessoa01, .Usuario = _usuario01}
        _contato02 = New Telefone With {.DDD = "21", .Numero = "6789-9908", .Pessoa = _pessoa02, .Usuario = _usuario01}
        _contato03 = New Email With {.Endereco = "teste@test.com", .Pessoa = _pessoa01, .Usuario = _usuario01}

        _usuario02 = New Usuario With {.Login = "ANA", .Pessoa = _pessoa02, .Habilitado = True}
        _usuario03 = New Usuario With {.Login = "MARCO", .Pessoa = _pessoa03, .Habilitado = True}
        _usuario04 = New Usuario With {.Login = "ANTONIO", .Pessoa = _pessoa04, .Habilitado = True}
        _usuario05 = New Usuario With {.Login = "CARLOS", .Pessoa = _pessoa05, .Habilitado = True}

        _peca01 = New Peca With {.Descricao = "castiçal de ouro", .Proprietario = _usuario01}
        _peca02 = New Peca With {.Descricao = "Moeda 1800", .Proprietario = _usuario01}
        _peca03 = New Peca With {.Descricao = "Selo Chinês", .Proprietario = _usuario02}
        _peca04 = New Peca With {.Descricao = "Moeda 1500", .Proprietario = _usuario02}
        _peca05 = New Peca With {.Descricao = "Candelabro folheado", .Proprietario = _usuario02}
        _peca06 = New Peca With {.Descricao = "Livro 1600", .Proprietario = _usuario02}
        _peca07 = New Peca With {.Descricao = "Moeda prata", .Proprietario = _usuario02}
        _peca08 = New Peca With {.Descricao = "500 fotografias Rio antigo", .Proprietario = _usuario02}

        _imagem01 = New ImagemPeca With {.Extensao = "jpg", .Peca = _peca01, .Tamanho = 100, .Descricao = "Peça de teste"}
        _imagem02 = New ImagemPeca With {.Extensao = "jpg", .Peca = _peca01, .Tamanho = 3500, .Descricao = "Peça de teste 02"}

        _comissao01 = New Comissao With {.TipoComissao = TipoComissao.ValorFixo, .Valor = 10}

        _regraLeilao01 = New RegraLeilao With {.ValorLimite = 20, .Autor = _peca01.Proprietario, .Comissao = _comissao01}

        _leilao01 = New Leilao With {.Ativo = False, .Autor = _usuario01, .Leiloeiro = _usuario02, .Regra = _regraLeilao01}

        _regraLote01 = New RegraLote With {.Autor = _usuario01, .LanceMinimo = 150, .Comissao = _comissao01}

        _lote01 = New Lote With {.Descricao = "Moedas de 1500, florença Itália", .Pecas = New List(Of Peca), .RegraLote = _regraLote01, .Leilao = _leilao01}
        _lote01.Pecas.Add(_peca01)

        _lote01.Pecas.Add(_peca02)

        _lote02 = New Lote With {.Descricao = "Peças antigas de geladeira", .Pecas = New List(Of Peca), .RegraLote = _regraLote01, .Leilao = _leilao01}
        _lote02.Pecas.Add(_peca05)
        _lote02.Pecas.Add(_peca06)
        _lote02.Pecas.Add(_peca07)
        _lote02.Pecas.Add(_peca08)

        _lance01 = New Lance With {.Autor = _usuario03, .DataHora = Now, .Lote = _lote01, .Valor = 100}
        _lance02 = New Lance With {.Autor = _usuario04, .DataHora = Now.AddMinutes(4), .Lote = _lote01, .Valor = 150}
        _lance03 = New Lance With {.Autor = _usuario03, .DataHora = Now.AddMinutes(5), .Lote = _lote01, .Valor = 180}
        _lance04 = New Lance With {.Autor = _usuario04, .DataHora = Now.AddMinutes(8), .Lote = _lote01, .Valor = 200}

        _lance05 = New Lance With {.Autor = _usuario04, .DataHora = Now.AddMinutes(20), .Lote = _lote02, .Valor = 500}
        _lance06 = New Lance With {.Autor = _usuario05, .DataHora = Now.AddMinutes(23), .Lote = _lote02, .Valor = 600}
        _lance07 = New Lance With {.Autor = _usuario03, .DataHora = Now.AddMinutes(30), .Lote = _lote02, .Valor = 630}


        _venda01 = New Venda With {.Comprador = _lance07.Autor, .LanceDeFechamento = _lance07, .Lote = _lance07.Lote, .TimeStamp = _lance07.DataHora.AddMinutes(60)}

        _fatura01 = New Fatura With {.DataFaturamento = _venda01.TimeStamp, .Vencimento = Now.AddDays(5), .Venda = _venda01, .Valor = _venda01.Lote.RegraLote.Comissao.Valor, .UsuarioFaturado = _venda01.Lote.Leilao.Autor, .Status = StatusFatura.EmAberto}


        Dim _lotes As IList(Of Lote)
        _lotes = New List(Of Lote)
        _lotes.Add(_lote01)
        _lotes.Add(_lote02)

        Return _lotes

    End Function

End Class
